﻿
using System;
using System.Text;
using System.Data;
using System.Data.Common;
using System.Collections.Generic;
using Microsoft.Practices.EnterpriseLibrary.Data;
using Microsoft.Practices.EnterpriseLibrary.Data.Sql;
using BE;

namespace DA
{
    public class daDetalleActividad
    {
        public static DataTable Obtener(beDetalleActividad oBE)
        {
            SqlDatabase sqlClient = new SqlDatabase(Configuracion.GetConnection);
            DbCommand dbCmd = sqlClient.GetStoredProcCommand("sp_ConsultarDetalleActividad");
            sqlClient.AddInParameter(dbCmd, "@IDDetalleActividad", DbType.Int32, oBE.IDDetalleActividad);
            sqlClient.AddInParameter(dbCmd, "@IDReporteGuardia", DbType.Int32, oBE.IDReporteGuardia);
            sqlClient.AddInParameter(dbCmd, "@IDActividad", DbType.Int32, oBE.IDActividad);
            sqlClient.AddInParameter(dbCmd, "@HorasInternas", DbType.Int32, oBE.HorasInternas);
            sqlClient.AddInParameter(dbCmd, "@HorasCliente", DbType.Int32, oBE.HorasCliente);
            return sqlClient.ExecuteDataSet(dbCmd).Tables[0];
        }

        public static Int32 Registrar(beDetalleActividad oBE)
        {
            SqlDatabase sqlClient = new SqlDatabase(Configuracion.GetConnection);
            DbCommand dbCmd = sqlClient.GetStoredProcCommand("sp_RegistrarDetalleActividad");
            sqlClient.AddInParameter(dbCmd, "@IDReporteGuardia", DbType.Int32, oBE.IDReporteGuardia);
            sqlClient.AddInParameter(dbCmd, "@IDActividad", DbType.Int32, oBE.IDActividad);
            sqlClient.AddInParameter(dbCmd, "@HorasInternas", DbType.Int32, oBE.HorasInternas);
            sqlClient.AddInParameter(dbCmd, "@HorasCliente", DbType.Int32, oBE.HorasCliente);
            return Convert.ToInt32(sqlClient.ExecuteScalar(dbCmd));
        }

        public static Int32 Eliminar(beDetalleActividad oBE)
        {
            SqlDatabase sqlClient = new SqlDatabase(Configuracion.GetConnection);
            DbCommand dbCmd = sqlClient.GetStoredProcCommand("sp_EliminarDetalleActividad");
            sqlClient.AddInParameter(dbCmd, "@IDDetalleActividad", DbType.Int32, oBE.IDDetalleActividad );

            return Convert.ToInt32(sqlClient.ExecuteScalar(dbCmd));
            //sqlClient.ExecuteNonQuery(dbCmd);
        }
        public static Int32 Modificar(beDetalleActividad oBE)
        {
            SqlDatabase sqlClient = new SqlDatabase(Configuracion.GetConnection);
            DbCommand dbCmd = sqlClient.GetStoredProcCommand("sp_ModificarDetalleActividad");
            sqlClient.AddInParameter(dbCmd, "@IDDetalleActividad", DbType.Int32, oBE.IDDetalleActividad);
            sqlClient.AddInParameter(dbCmd, "@IDReporteGuardia", DbType.Int32, oBE.IDReporteGuardia);
            sqlClient.AddInParameter(dbCmd, "@IDActividad", DbType.Int32, oBE.IDActividad);
            sqlClient.AddInParameter(dbCmd, "@HorasInternas", DbType.Int32, oBE.HorasInternas);
            sqlClient.AddInParameter(dbCmd, "@HorasCliente", DbType.Int32, oBE.HorasCliente);
            return Convert.ToInt32(sqlClient.ExecuteScalar(dbCmd));
        }
    }
}
